package co.edu.usbcali.unidad.modelo.control;

import co.edu.usbcali.unidad.modelo.Reserva;

import java.math.BigDecimal;

import java.util.*;

/**
 * interface ReservaLogic
 * 
 * @author Zathura Code Generator http://code.google.com/p/zathura
 * 
 */
public interface IReservaLogic {
	public List<Reserva> getReserva() throws Exception;

	public void saveReserva(String resCodigo, Date resFecha, Date resHoraFin,
			Date resHoraInicio, String estCodigo_Estado,
			String priCodigo_PropietarioInmueble, String zocCodigo_ZonaComun)
			throws Exception;

	public void deleteReserva(String resCodigo) throws Exception;
	
	public List<Reserva> horaFecha(Date fecha) throws Exception;

	public void updateReserva(String resCodigo, Date resFecha, Date resHoraFin,
			Date resHoraInicio, String estCodigo_Estado,
			String priCodigo_PropietarioInmueble, String zocCodigo_ZonaComun)
			throws Exception;

	public Reserva getReserva(String resCodigo) throws Exception;

	public List<Reserva> findByCriteria(Object[] variables,
			Object[] variablesBetween, Object[] variablesBetweenDates)
			throws Exception;
	
	public List<Reserva> findByCriteria(String where)
			throws Exception;

	public List<Reserva> findPageReserva(String sortColumnName,
			boolean sortAscending, int startRow, int maxResults)
			throws Exception;

	public Long findTotalNumberReserva() throws Exception;
	
	public List<Reserva> buscarPorCodigo(String codInmueble, String txtNombCon) throws Exception;
    
    public List<Reserva> buscarFecha(String fecha) throws Exception;
}
